Release 10.1A: OpenEdge Development:
Programming Interfaces


Preface

This Preface contains the following sections:

Purpose

Many operating systems and user interfaces provide tools that allow one application to exchange data or use services provided by another application (external program). Progress allows you to use some of these tools as external program interfaces (EPIs) from within an OpenEdgeŽ application.

This is a three-part book that discusses topics pertaining to external program interfaces. The first part of this book describes information you need to know about accessing databases. The second part discusses input and output processes. Finally, the third part of this manual describes the EPIs that Progress supports, and explains how to use them from the 4GL to integrate your OpenEdge application with other applications in your operating environment.

Audience

This manual is intended for any Progress programmer who is writing applications that require the use of external programming interfaces. In general, this programmer has a working knowledge of both the EPIs and the operating systems in which the EPIs run.

Organization

Part I, Data Management

Chapter 1 "Database Access"

Describes the Progress 4GL statements that allow you to read and write data in a database. This chapter also describes techniques for browsing database data on a display.

Chapter 2 "Application Security"

Surveys the types of data security that the Progress 4GL supports. This chapter focuses specifically on how you can provide various types of run-time security within an application.

Chapter 3 "Auditing"

Surveys auditing support in OpenEdge applications. OpenEdge provides core support for recording secure audit trails in any OpenEdge RDBMS that is enabled for auditing.

Part II, Input/Output Processes

Chapter 4 "Handling User Input"

Describes how OpenEdge handles input from the keyboard and the mouse. This chapter includes examples of how you can monitor data entry from the user.

Chapter 5 "Alternate I/O Sources"

Describes how your OpenEdge application can handle I/O to and from operating system files and special devices.

Chapter 6 "Colors and Fonts"

Surveys OpenEdge support for colors and fonts, including the techniques for modifying colors and fonts within an application.

Chapter 7 "Creating Reports"

Describes how to generate and format simple and complex reports.

Part III, External Program Interfaces

Chapter 8 "Introduction to External Program Interfaces"

Describes the EPIs supported by OpenEdge, what they can provide for your applications, and the requirements for using them.

Chapter 9 "System Clipboard"

Describes how to use the CLIPBOARD handle to read and write data to the system clipboard, and how to provide user interactions between the system clipboard and your OpenEdge application.

Chapter 10 "Providing Help for OpenEdge Applications"

Describes how to provide online help for your OpenEdge application.

Chapter 11 "Named Pipes"

Describes how to use named pipes to provide interprocess communication (IPC) between your OpenEdge application and another application running on either the UNIX operating system or Windows. It emphasizes techniques that enable any OpenEdge application to be a data server for the external application.

Chapter 12 "Shared Library and DLL Support"

Describes how to call UNIX shared library functions and Windows dynamic link library (DLL) functions from a OpenEdge application. This includes how to declare shared library functions as internal procedures and how to pass OpenEdge data items as shared library parameters.

Chapter 13 "Windows Dynamic Data Exchange"

Describes how to use dynamic data exchange (DDE) in Windows to send and receive data between your OpenEdge application running as a DDE client and another application running as a DDE server.

Chapter 14 "Using COM Objects in the 4GL"

Describes OpenEdge support for COM objects, including information common to both ActiveX Automation objects and ActiveX Controls.

Chapter 15 "ActiveX Automation Support"

Describes OpenEdge support for ActiveX Automation and how to implement a Progress application as an ActiveX Automation Controller from the 4GL.

Chapter 16 "ActiveX Control Support"

Describes OpenEdge support for ActiveX controls in the 4GL, including how to convert an earlier application using VBX controls to the same application using ActiveX controls.

Chapter 17 "Sockets"

Describes OpenEdge support for the use of sockets in the 4GL, including connecting to and disconnecting from a port using sockets and receiving and transmitting data.

Chapter 18 "Host Language Call Interface"

Describes the OpenEdge Host Language Call (HLC) Interface.

Chapter 19 "Progress XML Support and the Document Object Model (DOM)"

Describes OpenEdge support for XML in the 4GL, including the receipt and processing of XML documents and the creation and transmission of XML documents.

Chapter 20 "Simple API for XML (SAX): SAX-Reader and SAX-Attributes"

Describes OpenEdge support for SAX and provides a SAX API reference.

Chapter 21 "Simple API for XML (SAX): SAX-writer"

Describes the SAX-writer, a Progress 4GL object that streams (writes) an XML document to a specified target using the built-in support for the SAX API.

Chapter 22 "Reading and Writing XML Using Temp-Tables and ProDataSets"

Describes how temp-tables and ProDataSets can serialize their data to an XML document and serialize their definitions to XML Schema documents. This chapter also describes how you can read or read and load XML data and schema into a temp-table or ProDataSet.

Appendix A, "COM Object Data Type Mapping"

Describes the automatic conversion support between COM data types and Progress data types for COM object properties, methods, and events.

Appendix B, "Audit Policy Maintenance APIs"

Describes several Progress 4GL APIs used to implement the OpenEdge Audit Policy Maintenance tool. This tool allows you to create and maintain audit policies in an OpenEdge RDBMS.

Appendix C, "HLC Library Function Reference"

Describes the HLC library functions that provide an interface between your HLC functions and the Progress 4GL.

Appendix D, "XML Reference of Data Type and Code Page mappings"

Lists data type and code page mappings needed to support 4GL applications that interoperate with XML.

Appendix E, "Command and Utility Reference"

Describes the Quoter utility and the bproxsdto4gl utility.


Copyright © 2005 Progress Software Corporation
www.progress.com
Voice: (781) 280-4000
Fax: (781) 280-4095